//#pragma once

#define	DRIVE_1			0
#define	DRIVE_2			1

#define	DRIVES			2
#define	TRACKS_STANDARD	35
#define	TRACKS_EXTRA	5		// Allow up to a 40-track .dsk image (160KB)
#define	TRACKS_MAX		(TRACKS_STANDARD+TRACKS_EXTRA)

extern BOOL enhancedisk;

void    DiskBoot ();
void    DiskEject( const int iDrive );


enum Disk_Status_e
{
	DISK_STATUS_OFF  ,
	DISK_STATUS_READ ,
	DISK_STATUS_WRITE,
	DISK_STATUS_PROT ,
	NUM_DISK_STATUS
};
;
int     DiskInsert (int,char *,int,BOOL,char *);
BOOL    DiskIsSpinning ();
void    DiskReset ();
void    DiskSelect (int);
void    DiskUpdatePosition (DWORD);
void    DiskLoadRom(LPBYTE pCxRomPeripheral, UINT uSlot);
DWORD   DiskGetSnapshot(SS_CARD_DISK2* pSS, DWORD dwSlot);
DWORD   DiskSetSnapshot(SS_CARD_DISK2* pSS, DWORD dwSlot);
void    CADiskSave (int iDrive, char* image, int disksize);
void    CADiskLoadBytes (int iDrive, char* image, int disksize);

BOOL DiskActivity(int);

void Disk_LoadLastDiskImage( int iDrive );
void Disk_SaveLastDiskImage( int iDrive );


